home *** CD-ROM | disk | FTP | other *** search
- /* $VER: bbsSortUsers.rexx 8.3 (13.11.94) */
-
- PARSE ARG bbspath bbsname
-
- CR=''
- IF ADDRESS()='BAUD' THEN CR='0D'x
- def=''
- pen3=''
- lineup='1B'x'M'
- SAY ' Counting Users...'lineup||CR
- userlist=SHOWDIR(bbspath'Users')
- users=WORDS(userlist)
- SAY CENTER(RIGHT(users,8) 'Users on'pen3 bbsname,74)||def||CR
- SAY 'Rebuilding Userlist...'CR
- sortuserflag=0
- user.=''
- user.0=users
- DO uli=1 TO users
- user.uli=WORD(userlist,uli)
- uscore=LASTPOS('_',user.uli)
- IF uscore>0 THEN user.uli=SUBSTR(user.uli,uscore+1)'@'LEFT(user.uli,uscore-1)
- END
- IF users>0 THEN CALL QSORT(1,users,user)
- DO uli=1 TO users
- uscore=POS('@',user.uli)
- IF uscore>0 THEN user.uli=SUBSTR(user.uli,uscore+1)'_'LEFT(user.uli,uscore-1)
- END
- ulynes.=''
- ulynes.0=user.0%3
- IF (user.0//3)>0 THEN ulynes.0=ulynes.0+1
- DO i=1 TO ulynes.0
- ulynes.i=LEFT(user.i,25)
- DO j=1 TO 2
- k=i+j*ulynes.0
- IF k<=users THEN ulynes.i=ulynes.i' 'LEFT(user.k,25)
- END
- END
- IF OPEN(f,bbspath'Lists/USERS','W')~=0 THEN
- DO
- DO i=1 TO ulynes.0
- CALL WRITELN(f,ulynes.i)
- END
- CALL CLOSE(f)
- END
- EXIT users
-
- /* bbsSortUsers.rexx */
-